package com.naiterui.ehp.bs.im.network.transfer;

import com.naiterui.ehp.bs.im.exception.NaiteruiIMException;
import com.naiterui.ehp.bs.im.network.protocl.Message;

/**
 * 定义信息传输的相关规范
 */
public interface Transfer {

    /**
     * 发送消息
     */
    void sendMessage(Message<?> message, boolean isOnline) throws NaiteruiIMException;

    /**
     * 发送离线消息
     */
    void sendOfflineMessage(Message<?> message) throws NaiteruiIMException;

    /**
     * Transfer.handleOfflineMessage()
     */
    void handleOfflineMessage(Long userId);

}
